
import db from '../db.js';//获取连接实例
import sequelize from 'sequelize'
const { Sequelize, Op, Model, DataTypes } = sequelize;

// console.log(DataTypes);

// primaryKey: true 
// autoIncrement: true
// unique: true
// unique: "string" //多个相同的unique成为组合唯一键
const language = db.define('language', {
    // Model attributes are defined here
    name: {
        type: DataTypes.STRING(20),
        allowNull: false,//allowNull 默认 true
        comment: '语言名称',
    },
    sdk: {
        type: DataTypes.STRING(200),
        allowNull: false,//allowNull 默认 true
        comment: '语言对应sdk',
    },
}, {
    freezeTableName: true, // 默认false修改表名为复数，true不修改表名，与数据库表名同步      
    tableName: 'language',
    timestamps: false,//禁止自动创建createdAt，updatedAt
    indexes: [
        { unique: true, fields: ['name'] }
    ]
});

// language.sync()- 如果表不存在，这将创建表（如果该表已存在，则不显示任何操作）
// language.sync({ force: true })- 这将创建表，如果表已存在，则先删除该表
// language.sync({ alter: true }) //这将检查数据库中表的当前状态（包含哪些列、它们的数据类型等），然后在表中执行必要的更改，使其与模型匹配。

export default language